package com.outdoor.server.service;

import com.outdoor.common.result.PageResult;
import com.outdoor.pojo.dto.AdminDTO;
import com.outdoor.pojo.dto.AdminLoginDTO;
import com.outdoor.pojo.dto.AdminPageQueryDTO;
import com.outdoor.pojo.entity.Admin;
import com.outdoor.pojo.vo.AdminVO;

public interface AdminService {
    /**
     * 登录
     * @param adminLoginDTO
     * @return
     */
    Admin login(AdminLoginDTO adminLoginDTO);

    /**
     * 新增管理员
     * @param adminDTO
     */
    void add(AdminDTO adminDTO);

    /**
     * 分页查询
     * @param adminPageQueryDTO
     * @return
     */
    PageResult page(AdminPageQueryDTO adminPageQueryDTO);

    /**
     * 根据id查询管理员信息
     * @param id
     * @return
     */
    AdminVO getById(Long id);

    /**
     * 修改管理员信息
     * @param admin
     */
    void update(Admin admin);

    /**
     * 管理员启用停用
     */
    void updateStatus(Integer status, Long id);
}
